set(CORE_SRC core/error.cc core/math.cc core/memory.cc core/options.cc
             core/parallel.cc core/random.cc core/timer.cc core/utils.cc)
set(GEOM_SRC geom/aabb.cc geom/matrix4x4.cc geom/normal.cc geom/point.cc
             geom/vector3.cc)
set(UI_SRC ui/glut_window.cc ui/logic_window.cc ui/win32_window.cc)

set(MODEL_SRC model/mesh_creator.cc model/obj_loader.cc model/triangle_mesh.cc)

set(GRAPHICS_SRC graphics/camera.cc graphics/fps_counter.cc graphics/color.cc
                 graphics/framebuffer_object.cc graphics/render_device_fbo.cc
                 graphics/cube_image.cc graphics/gl_utils.cc 
                 graphics/program_glsl.cc graphics/cube_texture_gl.cc
                 graphics/shader_object.cc graphics/image.cc
                 graphics/image_texture_gl.cc graphics/render_buffer.cc)

set(LIBCHEETAH_SRC ${CORE_SRC} ${GEOM_SRC} ${UI_SRC} ${GRAPHICS_SRC} 
                   ${MODEL_SRC})

add_library(cheetah_static STATIC ${LIBCHEETAH_SRC})
set_target_properties(cheetah_static PROPERTIES OUTPUT_NAME "cheetah")
